#ifndef FORCE_GENERATOR
#define FORCE_GENERATOR

#include <map>

using namespace std;

struct Entity;

class ForceGenerator
{
protected:
	map<int, Entity*> *entityRegister;

public:
	ForceGenerator()
	{
		entityRegister = new map<int, Entity*>();
	}

	~ForceGenerator()
	{	}

	bool Register(int id, Entity *entity)
	{
		if (entityRegister->find(id) == entityRegister->end())
		{
			entityRegister->insert(pair<int, Entity*>(id, entity));
			return true;
		}
		return false;
	}

	virtual void Update(int id, float time) = 0;
};
#endif